3 research outputs found

    Cost-effective Data Upkeep in Decentralized Storage Systems

    Get PDF
    Decentralized storage systems split files into chunks and distribute the chunks across a network of peers. Each peer may only store a few chunks per file. To later reconstruct a file, all its chunks must be downloaded. Chunks can disappear from the network at any time as peers are untrusted and may misbehave, fail or leave the network. Current systems lack a secure and cost-effective mechanism for discovering missing chunks. Hence, a client must periodically re-upload all of the file's chunks to keep it available, even if only a few are missing from the network. Needlessly re-uploading chunks waste significant amounts of the network's bandwidth, takes additional time to complete, and forces the client to pay for unwarranted resources. To address the above problem, we propose SUP, a novel protocol that utilizes proof-of-storage queries to detect missing chunks. We have evaluated SUP on a large cluster of 1000 peers running a recent version of Ethereum Swarm. Our contributions include the design and implementation of SUP and a study of Swarm's redundancy characteristics. Our evaluation shows that SUP significantly improves bandwidth utilization and time spent on data upkeep compared to the existing solution. In common scenarios, SUP can save as much as 94 % bandwidth and reduce the time spent re-uploading by up to 82 %. While dependent on the storage network's bandwidth pricing policy, using SUP may also reduce the overall monetary costs of data upkeep.acceptedVersio

    An Extensible Framework for Implementing and Validating Byzantine Fault-tolerant Protocols

    Get PDF
    HotStuff is a Byzantine fault-tolerant state machine replication protocol that incurs linear communication costs to achieve consensus. This linear scalability promoted the protocol to be adopted as the consensus mechanism in permissioned blockchains. This paper discusses the architecture, testing, and evaluation of our extensible framework to implement HotStuff and its variants. The framework already contains three HotStuff variants and other interchangeable components for cryptographic operations and leader selection. Inspired by the Twins approach, we also provide a testing framework for validating protocol implementations by inducing Byzantine behaviors. Test generation is protocol-agnostic; new protocols can execute the test suite with little-to-no modifications. We report relevant insights on how we benefited from Twins for validation and test-driven development. Leveraging our deployment tool, we evaluated our implementation in various configurations.acceptedVersio

    Through the Wormhole: Cross-OS Desktop Integration for Linux Applications

    No full text
    With the Windows Subsystem for Linux (WSL), Microsoft has been working to make Linux software more accessible to Windows users. Microsoft is also looking to integrate graphical Linux applications into Windows with a subproject of the WSL called WSLg. WSLg has thus far integrated the individual windows of Linux applications with Windows’s window manager. However, modern Linux applications are capable of integrations with the desktop environment that go beyond windowing. The goal of this thesis is to show that it is possible to integrate graphical Linux applications with another operating system’s desktop environment, not just the window manager. It describes the implementation of a program called Wormhole, which facilitates this integration for Linux applications, running in the Windows Subsystem for Linux, into the Windows desktop environment. The results show that Wormhole succeeds in making this integration possible. Four Linux applications were tested with Wormhole, and all were able to integrate better with the Windows desktop environment with the help of Wormhole
    corecore